Optimal network design